home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / mozilla-firefox / include / websrvcs / nsISOAPEncoding.h < prev    next >
C/C++ Source or Header  |  2006-05-08  |  28KB  |  597 lines

  1. /*
  2.  * DO NOT EDIT.  THIS FILE IS GENERATED FROM nsISOAPEncoding.idl
  3.  */
  4.  
  5. #ifndef __gen_nsISOAPEncoding_h__
  6. #define __gen_nsISOAPEncoding_h__
  7.  
  8.  
  9. #ifndef __gen_nsISupports_h__
  10. #include "nsISupports.h"
  11. #endif
  12.  
  13. /* For IDL files that don't want to include root IDL files. */
  14. #ifndef NS_NO_VTABLE
  15. #define NS_NO_VTABLE
  16. #endif
  17. class nsISchemaType; /* forward declaration */
  18.  
  19. class nsIDOMElement; /* forward declaration */
  20.  
  21. class nsISOAPEncoder; /* forward declaration */
  22.  
  23. class nsISOAPDecoder; /* forward declaration */
  24.  
  25. class nsISOAPMessage; /* forward declaration */
  26.  
  27. class nsIVariant; /* forward declaration */
  28.  
  29. class nsISOAPAttachments; /* forward declaration */
  30.  
  31. class nsISchemaCollection; /* forward declaration */
  32.  
  33. class nsISOAPEncoding; /* forward declaration */
  34.  
  35.  
  36. /* starting interface:    nsISOAPEncodingRegistry */
  37. #define NS_ISOAPENCODINGREGISTRY_IID_STR "9fe91a61-3048-40e3-99ef-e39ab946ae0b"
  38.  
  39. #define NS_ISOAPENCODINGREGISTRY_IID \
  40.   {0x9fe91a61, 0x3048, 0x40e3, \
  41.     { 0x99, 0xef, 0xe3, 0x9a, 0xb9, 0x46, 0xae, 0x0b }}
  42.  
  43. /** 
  44.  * This interface provides access to a collection of SOAP encodings
  45.  *   and schemas. The registry is owned by an encoding.
  46.  */
  47. class NS_NO_VTABLE nsISOAPEncodingRegistry : public nsISupports {
  48.  public: 
  49.  
  50.   NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISOAPENCODINGREGISTRY_IID)
  51.  
  52.   /**
  53.    * Get an associated encoding for a different encoding style.  If
  54.    *   there is no default associated encoding available for the
  55.    *   specified encoding style, then if aCreateIf is specified, one
  56.    *   is created, otherwise a null is returned.  Associated encodings
  57.    *   are the set of encodings that may be used and modified together
  58.    *   as a set.
  59.    *
  60.    * @param aStyleURI The style URI of the associated encoding.
  61.    *
  62.    * @param aCreateIf If true, then create the associated encoding if it
  63.    *   does not already exist, otherwise return the existing encoding.
  64.    *
  65.    * @return The associated encoding which corresponds to the
  66.    *   specified styleURI, or null if the spefied alternative encoding
  67.    *   does not exist and it was not requested that it be created.
  68.    */
  69.   /* nsISOAPEncoding getAssociatedEncoding (in AString aStyleURI, in boolean aCreateIf); */
  70.   NS_IMETHOD GetAssociatedEncoding(const nsAString & aStyleURI, PRBool aCreateIf, nsISOAPEncoding **_retval) = 0;
  71.  
  72.   /**
  73.     * The schema collection used by the owning encoding and all 
  74.     *   associated encodings.
  75.     */
  76.   /* attribute nsISchemaCollection schemaCollection; */
  77.   NS_IMETHOD GetSchemaCollection(nsISchemaCollection * *aSchemaCollection) = 0;
  78.   NS_IMETHOD SetSchemaCollection(nsISchemaCollection * aSchemaCollection) = 0;
  79.  
  80. };
  81.  
  82. /* Use this macro when declaring classes that implement this interface. */
  83. #define NS_DECL_NSISOAPENCODINGREGISTRY \
  84.   NS_IMETHOD GetAssociatedEncoding(const nsAString & aStyleURI, PRBool aCreateIf, nsISOAPEncoding **_retval); \
  85.   NS_IMETHOD GetSchemaCollection(nsISchemaCollection * *aSchemaCollection); \
  86.   NS_IMETHOD SetSchemaCollection(nsISchemaCollection * aSchemaCollection); 
  87.  
  88. /* Use this macro to declare functions that forward the behavior of this interface to another object. */
  89. #define NS_FORWARD_NSISOAPENCODINGREGISTRY(_to) \
  90.   NS_IMETHOD GetAssociatedEncoding(const nsAString & aStyleURI, PRBool aCreateIf, nsISOAPEncoding **_retval) { return _to GetAssociatedEncoding(aStyleURI, aCreateIf, _retval); } \
  91.   NS_IMETHOD GetSchemaCollection(nsISchemaCollection * *aSchemaCollection) { return _to GetSchemaCollection(aSchemaCollection); } \
  92.   NS_IMETHOD SetSchemaCollection(nsISchemaCollection * aSchemaCollection) { return _to SetSchemaCollection(aSchemaCollection); } 
  93.  
  94. /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
  95. #define NS_FORWARD_SAFE_NSISOAPENCODINGREGISTRY(_to) \
  96.   NS_IMETHOD GetAssociatedEncoding(const nsAString & aStyleURI, PRBool aCreateIf, nsISOAPEncoding **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAssociatedEncoding(aStyleURI, aCreateIf, _retval); } \
  97.   NS_IMETHOD GetSchemaCollection(nsISchemaCollection * *aSchemaCollection) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSchemaCollection(aSchemaCollection); } \
  98.   NS_IMETHOD SetSchemaCollection(nsISchemaCollection * aSchemaCollection) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetSchemaCollection(aSchemaCollection); } 
  99.  
  100. #if 0
  101. /* Use the code below as a template for the implementation class for this interface. */
  102.  
  103. /* Header file */
  104. class nsSOAPEncodingRegistry : public nsISOAPEncodingRegistry
  105. {
  106. public:
  107.   NS_DECL_ISUPPORTS
  108.   NS_DECL_NSISOAPENCODINGREGISTRY
  109.  
  110.   nsSOAPEncodingRegistry();
  111.  
  112. private:
  113.   ~nsSOAPEncodingRegistry();
  114.  
  115. protected:
  116.   /* additional members */
  117. };
  118.  
  119. /* Implementation file */
  120. NS_IMPL_ISUPPORTS1(nsSOAPEncodingRegistry, nsISOAPEncodingRegistry)
  121.  
  122. nsSOAPEncodingRegistry::nsSOAPEncodingRegistry()
  123. {
  124.   /* member initializers and constructor code */
  125. }
  126.  
  127. nsSOAPEncodingRegistry::~nsSOAPEncodingRegistry()
  128. {
  129.   /* destructor code */
  130. }
  131.  
  132. /* nsISOAPEncoding getAssociatedEncoding (in AString aStyleURI, in boolean aCreateIf); */
  133. NS_IMETHODIMP nsSOAPEncodingRegistry::GetAssociatedEncoding(const nsAString & aStyleURI, PRBool aCreateIf, nsISOAPEncoding **_retval)
  134. {
  135.     return NS_ERROR_NOT_IMPLEMENTED;
  136. }
  137.  
  138. /* attribute nsISchemaCollection schemaCollection; */
  139. NS_IMETHODIMP nsSOAPEncodingRegistry::GetSchemaCollection(nsISchemaCollection * *aSchemaCollection)
  140. {
  141.     return NS_ERROR_NOT_IMPLEMENTED;
  142. }
  143. NS_IMETHODIMP nsSOAPEncodingRegistry::SetSchemaCollection(nsISchemaCollection * aSchemaCollection)
  144. {
  145.     return NS_ERROR_NOT_IMPLEMENTED;
  146. }
  147.  
  148. /* End of implementation class template. */
  149. #endif
  150.  
  151.  
  152. /* starting interface:    nsISOAPEncoding */
  153. #define NS_ISOAPENCODING_IID_STR "9ae49600-1dd1-11b2-877f-e62f620c5e92"
  154.  
  155. #define NS_ISOAPENCODING_IID \
  156.   {0x9ae49600, 0x1dd1, 0x11b2, \
  157.     { 0x87, 0x7f, 0xe6, 0x2f, 0x62, 0x0c, 0x5e, 0x92 }}
  158.  
  159. class NS_NO_VTABLE nsISOAPEncoding : public nsISupports {
  160.  public: 
  161.  
  162.   NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISOAPENCODING_IID)
  163.  
  164.   /**
  165.  * This interface keeps track of the current encoding style and
  166.  *   how objects should be encoded or decoded, as well as all
  167.  *   associated encodings.
  168.  *   <p>While two different nsSOAPCalls may have an encoding
  169.  *   for the same styleURI, by default the encoding object and all
  170.  *   associated encoding objects are local do not affect other
  171.  *   calls because the encodings are local and not associated, 
  172.  *   unless the same or associated encodings are explicitly set
  173.  *   on multiple calls.  When a call is invoked, the same encoding 
  174.  *   object is automatically set on the response message so that
  175.  *   decoders registered on the call encoding are automatically
  176.  *   applied to the response.
  177.  */
  178. /**
  179.    * The name of the encoding as it is known to SOAP.
  180.    */
  181.   /* readonly attribute AString styleURI; */
  182.   NS_IMETHOD GetStyleURI(nsAString & aStyleURI) = 0;
  183.  
  184.   /**
  185.    * Get an associated encoding for a different encoding style.  If
  186.    *   there is no default associated encoding available for the
  187.    *   specified encoding style, then if aCreateIf is specified, one
  188.    *   is created, otherwise a null is returned.  Associated encodings
  189.    *   are the set of encodings that may be used and modified together
  190.    *   as a set.
  191.    *
  192.    * @param aStyleURI The style URI of the associated encoding.
  193.    *
  194.    * @param aCreateIf If true, then create the associated encoding if it
  195.    *   does not already exist, otherwise return the existing encoding.
  196.    *
  197.    * @return The associated encoding which corresponds to the
  198.    *   specified styleURI, or null if the spefied alternative encoding
  199.    *   does not exist and it was not requested that it be created.
  200.    */
  201.   /* nsISOAPEncoding getAssociatedEncoding (in AString aStyleURI, in boolean aCreateIf); */
  202.   NS_IMETHOD GetAssociatedEncoding(const nsAString & aStyleURI, PRBool aCreateIf, nsISOAPEncoding **_retval) = 0;
  203.  
  204.   /**
  205.     * Set an encoder in the encoding.
  206.     *
  207.     * @param aKey The key to be associated with the encoder.
  208.     *
  209.     * @param aEncoder The encoder to be specified or null to eliminate
  210.     *   the encoder.
  211.     */
  212.   /* void setEncoder (in AString aKey, in nsISOAPEncoder aEncoder); */
  213.   NS_IMETHOD SetEncoder(const nsAString & aKey, nsISOAPEncoder *aEncoder) = 0;
  214.  
  215.   /**
  216.     * Get an encoder from the encoding.
  217.     *
  218.     * @param aKey The key to be used to look up the encoder.
  219.     *
  220.     * @return The encoder.
  221.     */
  222.   /* nsISOAPEncoder getEncoder (in AString aKey); */
  223.   NS_IMETHOD GetEncoder(const nsAString & aKey, nsISOAPEncoder **_retval) = 0;
  224.  
  225.   /**
  226.     * Set a decoder in the encoding.
  227.     *
  228.     * @param aKey The key to be associated with the decoder.
  229.     *
  230.     * @param aDecoder The decoder to be specified or null to eliminate
  231.     *   the decoder.
  232.     */
  233.   /* void setDecoder (in AString aKey, in nsISOAPDecoder aDecoder); */
  234.   NS_IMETHOD SetDecoder(const nsAString & aKey, nsISOAPDecoder *aDecoder) = 0;
  235.  
  236.   /**
  237.     * Get a decoder from the encoding.
  238.     *
  239.     * @param aKey The key to be used to look up the decoder.
  240.     *
  241.     * @return The decoder.
  242.     */
  243.   /* nsISOAPDecoder getDecoder (in AString aKey); */
  244.   NS_IMETHOD GetDecoder(const nsAString & aKey, nsISOAPDecoder **_retval) = 0;
  245.  
  246.   /**
  247.    * The default encoder invoked by all encoding calls. Appropriate calls
  248.    * to more-specific encoders, if any, must be dispatched by this default 
  249.    * encoder.  The default encoder typically looks up encoders by known 
  250.    * information such as explicit or implicit types.
  251.    */
  252.   /* attribute nsISOAPEncoder defaultEncoder; */
  253.   NS_IMETHOD GetDefaultEncoder(nsISOAPEncoder * *aDefaultEncoder) = 0;
  254.   NS_IMETHOD SetDefaultEncoder(nsISOAPEncoder * aDefaultEncoder) = 0;
  255.  
  256.   /**
  257.    * The default decoder invoked by all encoding calls. Appropriate calls
  258.    * to more-specific decoders, if any, must be dispatched by this default 
  259.    * decoder.  The default decoder typically looks up encoders by known 
  260.    * information such as explicit or implicit types.
  261.    */
  262.   /* attribute nsISOAPDecoder defaultDecoder; */
  263.   NS_IMETHOD GetDefaultDecoder(nsISOAPDecoder * *aDefaultDecoder) = 0;
  264.   NS_IMETHOD SetDefaultDecoder(nsISOAPDecoder * aDefaultDecoder) = 0;
  265.  
  266.   /**
  267.     * The schema collection used by this and all associated encodings.
  268.     */
  269.   /* attribute nsISchemaCollection schemaCollection; */
  270.   NS_IMETHOD GetSchemaCollection(nsISchemaCollection * *aSchemaCollection) = 0;
  271.   NS_IMETHOD SetSchemaCollection(nsISchemaCollection * aSchemaCollection) = 0;
  272.  
  273.   /**
  274.    * Encode the source variant
  275.    *
  276.    * @param aEncodings The encodings to be used.
  277.    *
  278.    * @param aEncodingStyleURI The encoding style
  279.    *
  280.    * @param aSource The variant to be encoded, soon to become a variant
  281.    *
  282.    * @param aNamespaceURI The namespace of the thing being coded
  283.    *
  284.    * @param aName The name of the thing being coded
  285.    *
  286.    * @param aSchemaType The schema type of the thing being encoded
  287.    *
  288.    * @param aDestination The node scope where the result will live.
  289.    *
  290.    * @param aAttachments Accumulates any attachments.
  291.    *
  292.    * @return The element which was inserted and encoded.
  293.    */
  294.   /* nsIDOMElement encode (in nsIVariant aSource, in AString aNamespaceURI, in AString aName, in nsISchemaType aSchemaType, in nsISOAPAttachments aAttachments, in nsIDOMElement aDestination); */
  295.   NS_IMETHOD Encode(nsIVariant *aSource, const nsAString & aNamespaceURI, const nsAString & aName, nsISchemaType *aSchemaType, nsISOAPAttachments *aAttachments, nsIDOMElement *aDestination, nsIDOMElement **_retval) = 0;
  296.  
  297.   /**
  298.    * Decode the source DOM node
  299.    *
  300.    * @param aEncodings The encodings used to decode
  301.    *
  302.    * @param aEncodingStyleURI The encoding style
  303.    *
  304.    * @param aSource The DOM node to be decoded.
  305.    *
  306.    * @param aSchemaType The schema type of the source DOM node
  307.    *
  308.    * @param aAttachments Dispenses any attachments.
  309.    *
  310.    * @return The decoded variant, soon to become a variant, which is null if 
  311.    *   the operation failed or did not return a result.
  312.    */
  313.   /* nsIVariant decode (in nsIDOMElement aSource, in nsISchemaType aSchemaType, in nsISOAPAttachments aAttachments); */
  314.   NS_IMETHOD Decode(nsIDOMElement *aSource, nsISchemaType *aSchemaType, nsISOAPAttachments *aAttachments, nsIVariant **_retval) = 0;
  315.  
  316.   /**
  317.    * Map an external schema URI to an internal one.  In an
  318.    * ideal world, we don't need this, but schemas change URIs,
  319.    * and we wind up with inconsistencies between WSDL and
  320.    * exchanged documents.  The external URI must not be
  321.    * currently mapped and if output mapping is true, then
  322.    * the internal URI must be unique for output mapping.
  323.    *
  324.    * @param aExternalURI the external URI to be mapped.
  325.    *
  326.    * @param aInternalURI the internal URI to be mapped.
  327.    *
  328.    * @param aOutput If true, then re-map to the output
  329.    *   URI when outputting.
  330.    *
  331.    * @return boolean true if succeeded, false if the
  332.    *   mapping was not unique as required.
  333.    */
  334.   /* boolean mapSchemaURI (in AString aExternalURI, in AString aInternalURI, in boolean aOutput); */
  335.   NS_IMETHOD MapSchemaURI(const nsAString & aExternalURI, const nsAString & aInternalURI, PRBool aOutput, PRBool *_retval) = 0;
  336.  
  337.   /**
  338.    * Unmap an external schema URI as mapped by
  339.    * mapSchemaURI.
  340.    *
  341.    * @param aExternalURI the external URI to be mapped.
  342.    *
  343.    * @return boolean true if succeeded, false if the
  344.    *   mapping did not exist.
  345.    */
  346.   /* boolean unmapSchemaURI (in AString aExternalURI); */
  347.   NS_IMETHOD UnmapSchemaURI(const nsAString & aExternalURI, PRBool *_retval) = 0;
  348.  
  349.   /**
  350.    * Get an internal schema URI from an external one.
  351.    *
  352.    * @param aExternalURI the external URI which may
  353.    *   have been mapped.
  354.    *
  355.    * @return The corresponding internal URI (the
  356.    *   original is returned if it has not been mapped).
  357.    */
  358.   /* AString getInternalSchemaURI (in AString aExternalURI); */
  359.   NS_IMETHOD GetInternalSchemaURI(const nsAString & aExternalURI, nsAString & _retval) = 0;
  360.  
  361.   /**
  362.    * Get an external schema URI from an internal one.
  363.    *
  364.    * @param aExternalURI the external URI which may
  365.    *   have been mapped.
  366.    *
  367.    * @return The corresponding internal URI (the
  368.    *   original is returned if it has not been mapped).
  369.    */
  370.   /* AString getExternalSchemaURI (in AString aInternalURI); */
  371.   NS_IMETHOD GetExternalSchemaURI(const nsAString & aInternalURI, nsAString & _retval) = 0;
  372.  
  373. };
  374.  
  375. /* Use this macro when declaring classes that implement this interface. */
  376. #define NS_DECL_NSISOAPENCODING \
  377.   NS_IMETHOD GetStyleURI(nsAString & aStyleURI); \
  378.   NS_IMETHOD GetAssociatedEncoding(const nsAString & aStyleURI, PRBool aCreateIf, nsISOAPEncoding **_retval); \
  379.   NS_IMETHOD SetEncoder(const nsAString & aKey, nsISOAPEncoder *aEncoder); \
  380.   NS_IMETHOD GetEncoder(const nsAString & aKey, nsISOAPEncoder **_retval); \
  381.   NS_IMETHOD SetDecoder(const nsAString & aKey, nsISOAPDecoder *aDecoder); \
  382.   NS_IMETHOD GetDecoder(const nsAString & aKey, nsISOAPDecoder **_retval); \
  383.   NS_IMETHOD GetDefaultEncoder(nsISOAPEncoder * *aDefaultEncoder); \
  384.   NS_IMETHOD SetDefaultEncoder(nsISOAPEncoder * aDefaultEncoder); \
  385.   NS_IMETHOD GetDefaultDecoder(nsISOAPDecoder * *aDefaultDecoder); \
  386.   NS_IMETHOD SetDefaultDecoder(nsISOAPDecoder * aDefaultDecoder); \
  387.   NS_IMETHOD GetSchemaCollection(nsISchemaCollection * *aSchemaCollection); \
  388.   NS_IMETHOD SetSchemaCollection(nsISchemaCollection * aSchemaCollection); \
  389.   NS_IMETHOD Encode(nsIVariant *aSource, const nsAString & aNamespaceURI, const nsAString & aName, nsISchemaType *aSchemaType, nsISOAPAttachments *aAttachments, nsIDOMElement *aDestination, nsIDOMElement **_retval); \
  390.   NS_IMETHOD Decode(nsIDOMElement *aSource, nsISchemaType *aSchemaType, nsISOAPAttachments *aAttachments, nsIVariant **_retval); \
  391.   NS_IMETHOD MapSchemaURI(const nsAString & aExternalURI, const nsAString & aInternalURI, PRBool aOutput, PRBool *_retval); \
  392.   NS_IMETHOD UnmapSchemaURI(const nsAString & aExternalURI, PRBool *_retval); \
  393.   NS_IMETHOD GetInternalSchemaURI(const nsAString & aExternalURI, nsAString & _retval); \
  394.   NS_IMETHOD GetExternalSchemaURI(const nsAString & aInternalURI, nsAString & _retval); 
  395.  
  396. /* Use this macro to declare functions that forward the behavior of this interface to another object. */
  397. #define NS_FORWARD_NSISOAPENCODING(_to) \
  398.   NS_IMETHOD GetStyleURI(nsAString & aStyleURI) { return _to GetStyleURI(aStyleURI); } \
  399.   NS_IMETHOD GetAssociatedEncoding(const nsAString & aStyleURI, PRBool aCreateIf, nsISOAPEncoding **_retval) { return _to GetAssociatedEncoding(aStyleURI, aCreateIf, _retval); } \
  400.   NS_IMETHOD SetEncoder(const nsAString & aKey, nsISOAPEncoder *aEncoder) { return _to SetEncoder(aKey, aEncoder); } \
  401.   NS_IMETHOD GetEncoder(const nsAString & aKey, nsISOAPEncoder **_retval) { return _to GetEncoder(aKey, _retval); } \
  402.   NS_IMETHOD SetDecoder(const nsAString & aKey, nsISOAPDecoder *aDecoder) { return _to SetDecoder(aKey, aDecoder); } \
  403.   NS_IMETHOD GetDecoder(const nsAString & aKey, nsISOAPDecoder **_retval) { return _to GetDecoder(aKey, _retval); } \
  404.   NS_IMETHOD GetDefaultEncoder(nsISOAPEncoder * *aDefaultEncoder) { return _to GetDefaultEncoder(aDefaultEncoder); } \
  405.   NS_IMETHOD SetDefaultEncoder(nsISOAPEncoder * aDefaultEncoder) { return _to SetDefaultEncoder(aDefaultEncoder); } \
  406.   NS_IMETHOD GetDefaultDecoder(nsISOAPDecoder * *aDefaultDecoder) { return _to GetDefaultDecoder(aDefaultDecoder); } \
  407.   NS_IMETHOD SetDefaultDecoder(nsISOAPDecoder * aDefaultDecoder) { return _to SetDefaultDecoder(aDefaultDecoder); } \
  408.   NS_IMETHOD GetSchemaCollection(nsISchemaCollection * *aSchemaCollection) { return _to GetSchemaCollection(aSchemaCollection); } \
  409.   NS_IMETHOD SetSchemaCollection(nsISchemaCollection * aSchemaCollection) { return _to SetSchemaCollection(aSchemaCollection); } \
  410.   NS_IMETHOD Encode(nsIVariant *aSource, const nsAString & aNamespaceURI, const nsAString & aName, nsISchemaType *aSchemaType, nsISOAPAttachments *aAttachments, nsIDOMElement *aDestination, nsIDOMElement **_retval) { return _to Encode(aSource, aNamespaceURI, aName, aSchemaType, aAttachments, aDestination, _retval); } \
  411.   NS_IMETHOD Decode(nsIDOMElement *aSource, nsISchemaType *aSchemaType, nsISOAPAttachments *aAttachments, nsIVariant **_retval) { return _to Decode(aSource, aSchemaType, aAttachments, _retval); } \
  412.   NS_IMETHOD MapSchemaURI(const nsAString & aExternalURI, const nsAString & aInternalURI, PRBool aOutput, PRBool *_retval) { return _to MapSchemaURI(aExternalURI, aInternalURI, aOutput, _retval); } \
  413.   NS_IMETHOD UnmapSchemaURI(const nsAString & aExternalURI, PRBool *_retval) { return _to UnmapSchemaURI(aExternalURI, _retval); } \
  414.   NS_IMETHOD GetInternalSchemaURI(const nsAString & aExternalURI, nsAString & _retval) { return _to GetInternalSchemaURI(aExternalURI, _retval); } \
  415.   NS_IMETHOD GetExternalSchemaURI(const nsAString & aInternalURI, nsAString & _retval) { return _to GetExternalSchemaURI(aInternalURI, _retval); } 
  416.  
  417. /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
  418. #define NS_FORWARD_SAFE_NSISOAPENCODING(_to) \
  419.   NS_IMETHOD GetStyleURI(nsAString & aStyleURI) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetStyleURI(aStyleURI); } \
  420.   NS_IMETHOD GetAssociatedEncoding(const nsAString & aStyleURI, PRBool aCreateIf, nsISOAPEncoding **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAssociatedEncoding(aStyleURI, aCreateIf, _retval); } \
  421.   NS_IMETHOD SetEncoder(const nsAString & aKey, nsISOAPEncoder *aEncoder) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetEncoder(aKey, aEncoder); } \
  422.   NS_IMETHOD GetEncoder(const nsAString & aKey, nsISOAPEncoder **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetEncoder(aKey, _retval); } \
  423.   NS_IMETHOD SetDecoder(const nsAString & aKey, nsISOAPDecoder *aDecoder) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetDecoder(aKey, aDecoder); } \
  424.   NS_IMETHOD GetDecoder(const nsAString & aKey, nsISOAPDecoder **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDecoder(aKey, _retval); } \
  425.   NS_IMETHOD GetDefaultEncoder(nsISOAPEncoder * *aDefaultEncoder) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDefaultEncoder(aDefaultEncoder); } \
  426.   NS_IMETHOD SetDefaultEncoder(nsISOAPEncoder * aDefaultEncoder) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetDefaultEncoder(aDefaultEncoder); } \
  427.   NS_IMETHOD GetDefaultDecoder(nsISOAPDecoder * *aDefaultDecoder) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDefaultDecoder(aDefaultDecoder); } \
  428.   NS_IMETHOD SetDefaultDecoder(nsISOAPDecoder * aDefaultDecoder) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetDefaultDecoder(aDefaultDecoder); } \
  429.   NS_IMETHOD GetSchemaCollection(nsISchemaCollection * *aSchemaCollection) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSchemaCollection(aSchemaCollection); } \
  430.   NS_IMETHOD SetSchemaCollection(nsISchemaCollection * aSchemaCollection) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetSchemaCollection(aSchemaCollection); } \
  431.   NS_IMETHOD Encode(nsIVariant *aSource, const nsAString & aNamespaceURI, const nsAString & aName, nsISchemaType *aSchemaType, nsISOAPAttachments *aAttachments, nsIDOMElement *aDestination, nsIDOMElement **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->Encode(aSource, aNamespaceURI, aName, aSchemaType, aAttachments, aDestination, _retval); } \
  432.   NS_IMETHOD Decode(nsIDOMElement *aSource, nsISchemaType *aSchemaType, nsISOAPAttachments *aAttachments, nsIVariant **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->Decode(aSource, aSchemaType, aAttachments, _retval); } \
  433.   NS_IMETHOD MapSchemaURI(const nsAString & aExternalURI, const nsAString & aInternalURI, PRBool aOutput, PRBool *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->MapSchemaURI(aExternalURI, aInternalURI, aOutput, _retval); } \
  434.   NS_IMETHOD UnmapSchemaURI(const nsAString & aExternalURI, PRBool *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->UnmapSchemaURI(aExternalURI, _retval); } \
  435.   NS_IMETHOD GetInternalSchemaURI(const nsAString & aExternalURI, nsAString & _retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetInternalSchemaURI(aExternalURI, _retval); } \
  436.   NS_IMETHOD GetExternalSchemaURI(const nsAString & aInternalURI, nsAString & _retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetExternalSchemaURI(aInternalURI, _retval); } 
  437.  
  438. #if 0
  439. /* Use the code below as a template for the implementation class for this interface. */
  440.  
  441. /* Header file */
  442. class nsSOAPEncoding : public nsISOAPEncoding
  443. {
  444. public:
  445.   NS_DECL_ISUPPORTS
  446.   NS_DECL_NSISOAPENCODING
  447.  
  448.   nsSOAPEncoding();
  449.  
  450. private:
  451.   ~nsSOAPEncoding();
  452.  
  453. protected:
  454.   /* additional members */
  455. };
  456.  
  457. /* Implementation file */
  458. NS_IMPL_ISUPPORTS1(nsSOAPEncoding, nsISOAPEncoding)
  459.  
  460. nsSOAPEncoding::nsSOAPEncoding()
  461. {
  462.   /* member initializers and constructor code */
  463. }
  464.  
  465. nsSOAPEncoding::~nsSOAPEncoding()
  466. {
  467.   /* destructor code */
  468. }
  469.  
  470. /* readonly attribute AString styleURI; */
  471. NS_IMETHODIMP nsSOAPEncoding::GetStyleURI(nsAString & aStyleURI)
  472. {
  473.     return NS_ERROR_NOT_IMPLEMENTED;
  474. }
  475.  
  476. /* nsISOAPEncoding getAssociatedEncoding (in AString aStyleURI, in boolean aCreateIf); */
  477. NS_IMETHODIMP nsSOAPEncoding::GetAssociatedEncoding(const nsAString & aStyleURI, PRBool aCreateIf, nsISOAPEncoding **_retval)
  478. {
  479.     return NS_ERROR_NOT_IMPLEMENTED;
  480. }
  481.  
  482. /* void setEncoder (in AString aKey, in nsISOAPEncoder aEncoder); */
  483. NS_IMETHODIMP nsSOAPEncoding::SetEncoder(const nsAString & aKey, nsISOAPEncoder *aEncoder)
  484. {
  485.     return NS_ERROR_NOT_IMPLEMENTED;
  486. }
  487.  
  488. /* nsISOAPEncoder getEncoder (in AString aKey); */
  489. NS_IMETHODIMP nsSOAPEncoding::GetEncoder(const nsAString & aKey, nsISOAPEncoder **_retval)
  490. {
  491.     return NS_ERROR_NOT_IMPLEMENTED;
  492. }
  493.  
  494. /* void setDecoder (in AString aKey, in nsISOAPDecoder aDecoder); */
  495. NS_IMETHODIMP nsSOAPEncoding::SetDecoder(const nsAString & aKey, nsISOAPDecoder *aDecoder)
  496. {
  497.     return NS_ERROR_NOT_IMPLEMENTED;
  498. }
  499.  
  500. /* nsISOAPDecoder getDecoder (in AString aKey); */
  501. NS_IMETHODIMP nsSOAPEncoding::GetDecoder(const nsAString & aKey, nsISOAPDecoder **_retval)
  502. {
  503.     return NS_ERROR_NOT_IMPLEMENTED;
  504. }
  505.  
  506. /* attribute nsISOAPEncoder defaultEncoder; */
  507. NS_IMETHODIMP nsSOAPEncoding::GetDefaultEncoder(nsISOAPEncoder * *aDefaultEncoder)
  508. {
  509.     return NS_ERROR_NOT_IMPLEMENTED;
  510. }
  511. NS_IMETHODIMP nsSOAPEncoding::SetDefaultEncoder(nsISOAPEncoder * aDefaultEncoder)
  512. {
  513.     return NS_ERROR_NOT_IMPLEMENTED;
  514. }
  515.  
  516. /* attribute nsISOAPDecoder defaultDecoder; */
  517. NS_IMETHODIMP nsSOAPEncoding::GetDefaultDecoder(nsISOAPDecoder * *aDefaultDecoder)
  518. {
  519.     return NS_ERROR_NOT_IMPLEMENTED;
  520. }
  521. NS_IMETHODIMP nsSOAPEncoding::SetDefaultDecoder(nsISOAPDecoder * aDefaultDecoder)
  522. {
  523.     return NS_ERROR_NOT_IMPLEMENTED;
  524. }
  525.  
  526. /* attribute nsISchemaCollection schemaCollection; */
  527. NS_IMETHODIMP nsSOAPEncoding::GetSchemaCollection(nsISchemaCollection * *aSchemaCollection)
  528. {
  529.     return NS_ERROR_NOT_IMPLEMENTED;
  530. }
  531. NS_IMETHODIMP nsSOAPEncoding::SetSchemaCollection(nsISchemaCollection * aSchemaCollection)
  532. {
  533.     return NS_ERROR_NOT_IMPLEMENTED;
  534. }
  535.  
  536. /* nsIDOMElement encode (in nsIVariant aSource, in AString aNamespaceURI, in AString aName, in nsISchemaType aSchemaType, in nsISOAPAttachments aAttachments, in nsIDOMElement aDestination); */
  537. NS_IMETHODIMP nsSOAPEncoding::Encode(nsIVariant *aSource, const nsAString & aNamespaceURI, const nsAString & aName, nsISchemaType *aSchemaType, nsISOAPAttachments *aAttachments, nsIDOMElement *aDestination, nsIDOMElement **_retval)
  538. {
  539.     return NS_ERROR_NOT_IMPLEMENTED;
  540. }
  541.  
  542. /* nsIVariant decode (in nsIDOMElement aSource, in nsISchemaType aSchemaType, in nsISOAPAttachments aAttachments); */
  543. NS_IMETHODIMP nsSOAPEncoding::Decode(nsIDOMElement *aSource, nsISchemaType *aSchemaType, nsISOAPAttachments *aAttachments, nsIVariant **_retval)
  544. {
  545.     return NS_ERROR_NOT_IMPLEMENTED;
  546. }
  547.  
  548. /* boolean mapSchemaURI (in AString aExternalURI, in AString aInternalURI, in boolean aOutput); */
  549. NS_IMETHODIMP nsSOAPEncoding::MapSchemaURI(const nsAString & aExternalURI, const nsAString & aInternalURI, PRBool aOutput, PRBool *_retval)
  550. {
  551.     return NS_ERROR_NOT_IMPLEMENTED;
  552. }
  553.  
  554. /* boolean unmapSchemaURI (in AString aExternalURI); */
  555. NS_IMETHODIMP nsSOAPEncoding::UnmapSchemaURI(const nsAString & aExternalURI, PRBool *_retval)
  556. {
  557.     return NS_ERROR_NOT_IMPLEMENTED;
  558. }
  559.  
  560. /* AString getInternalSchemaURI (in AString aExternalURI); */
  561. NS_IMETHODIMP nsSOAPEncoding::GetInternalSchemaURI(const nsAString & aExternalURI, nsAString & _retval)
  562. {
  563.     return NS_ERROR_NOT_IMPLEMENTED;
  564. }
  565.  
  566. /* AString getExternalSchemaURI (in AString aInternalURI); */
  567. NS_IMETHODIMP nsSOAPEncoding::GetExternalSchemaURI(const nsAString & aInternalURI, nsAString & _retval)
  568. {
  569.     return NS_ERROR_NOT_IMPLEMENTED;
  570. }
  571.  
  572. /* End of implementation class template. */
  573. #endif
  574.  
  575. #define NS_SOAPENCODING_CID                            \
  576. { /* db612ec6-1dd1-11b2-a8bc-e6777bf70a30 */        \
  577.   0xdb612ec6, 0x1dd1, 0x11b2,                       \
  578.  {0xa8, 0xbc, 0xe6, 0x77, 0x7b, 0xf7, 0x0a, 0x30} }
  579. #define NS_SOAPENCODING_CONTRACTID \
  580. "@mozilla.org/xmlextras/soap/encoding;1"
  581. #define NS_SOAPENCODING_CONTRACTID_PREFIX \
  582. NS_SOAPENCODING_CONTRACTID "?uri="
  583. #define NS_DEFAULTSOAPENCODING_1_1_CID                            \
  584. { /* 06fb035c-1dd2-11b2-bc30-f6d8e314d6b9 */        \
  585.   0x06fb035c, 0x1dd2, 0x11b2,                       \
  586.  {0xbc, 0x30, 0xf6, 0xd8, 0xe3, 0x14, 0xd6, 0xb9} }
  587. #define NS_DEFAULTSOAPENCODING_1_1_CONTRACTID \
  588. NS_SOAPENCODING_CONTRACTID_PREFIX "http://schemas.xmlsoap.org/soap/encoding/"
  589. #define NS_DEFAULTSOAPENCODING_1_2_CID                            \
  590. { /* e0ee4044-1dd1-11b2-9d7e-8899d4d89648 */        \
  591.   0xe0ee4044, 0x1dd1, 0x11b2,                       \
  592.  {0x9d, 0x7e, 0x88, 0x99, 0xd4, 0xd8, 0x96, 0x48} }
  593. #define NS_DEFAULTSOAPENCODING_1_2_CONTRACTID \
  594. NS_SOAPENCODING_CONTRACTID_PREFIX "http://www.w3.org/2001/09/soap-encoding"
  595.  
  596. #endif /* __gen_nsISOAPEncoding_h__ */
  597.